import tkinter as tk
from 功能 import Fun_Frame
from PIL import Image, ImageTk

class MainPage:
    def __init__(self, master):
        # 窗口
        self.root = master
        self.root.title('管理员系统 v0.0.1')
        self.root.geometry('600x400')

        self.background_image = Image.open(r"背景图.jpg")
        self.background_photo = ImageTk.PhotoImage(self.background_image)
        # 设置背景
        bg_label = tk.Label(self.root, image=self.background_photo)
        bg_label.place(x=0, y=0, relwidth=1, relheight=1)

        # 欢迎语标签
        self.welcome_label = tk.Label(self.root, text="欢迎来到乐星超市管理系统！", font=('Helvetica', 20))
        self.welcome_label.pack(pady=20)
        self.create_page()

    def create_page(self):
        # 切换
        self.switch_frame1 = tk.Frame(self.root)  # 创建Frame对象
        tk.Label(self.switch_frame1, text="切换").pack()

        # 功能表
        # 供应商界面
        self.supplier_frame = Fun_Frame(self.root, table='供应商')
        # 商品界面
        self.goods_frame = Fun_Frame(self.root, table='商品')
        # 员工界面
        self.staff_frame = Fun_Frame(self.root, table='员工')
        # 采购主表界面
        self.procurement_main_frame = Fun_Frame(self.root, table='采购主表')
        # 采购主表界面
        self.procurement_detail_frame = Fun_Frame(self.root, table='采购明细')



        # 关于
        # 制作团队
        self.team_frame3 = tk.Frame(self.root)
        tk.Label(self.team_frame3, text="制作小组：高雨乐&孔星力").pack()
        # 其他
        #self.else_frame3 = tk.Frame(self.root)
        #tk.Label(self.else_frame3, text="其他").pack()

        # 菜单块
        menubar = tk.Menu(self.root)

        # 菜单1级
        filemenu1 = tk.Menu(menubar, tearoff=0)
        filemenu2 = tk.Menu(menubar, tearoff=0)
        filemenu3 = tk.Menu(menubar, tearoff=0)
        menubar.add_cascade(label='账户', menu=filemenu1)  # (名字，对象)
        menubar.add_cascade(label='功能', menu=filemenu2)  # (名字，对象)
        menubar.add_cascade(label='关于', menu=filemenu3)  # (名字，对象)

        # 菜单2级
        # 账户
        filemenu1.add_command(label='切换', command=self.file1_switch)

        # 添加
        filemenu2.add_command(label='供应商管理', command=self.file2_suppliers)
        filemenu2.add_command(label='员工管理', command=self.file2_staff)
        filemenu2.add_command(label='商品管理', command=self.file2_goods)
        procurement_menu=tk.Menu(filemenu2,tearoff=0)
        procurement_menu.add_command(label="采购主表",command=self.file2_procurement_main)
        procurement_menu.add_command(label="采购明细表",command=self.file2_procurement_detail)
        filemenu2.add_cascade(label='采购管理', menu=procurement_menu)

        # 关于
        filemenu3.add_command(label='制作团队', command=self.file3_team)
        #filemenu3.add_command(label='其他', command=self.file3_else)

        # 绑定到root
        self.root.config(menu=menubar)

    # 显示化
    def file1_switch(self):
        # 销毁界面，跳转登录界面
        from 用户登录界面 import LoginPage
        self.root.destroy()
        new_root = tk.Tk()
        LoginPage(new_root)

    def file2_suppliers(self):
        # 隐藏
        self.all_hide()
        self.supplier_frame.pack()

    def file2_goods(self):
        # 隐藏
        self.all_hide()
        self.goods_frame.pack()

    def file2_staff(self):
        # 隐藏
        self.all_hide()
        self.staff_frame.pack()

    def file2_procurement_main(self):
        # 隐藏
        self.all_hide()
        self.procurement_main_frame.pack()
    def file2_procurement_detail(self):
        # 隐藏
        self.all_hide()
        self.procurement_detail_frame.pack()

    def file3_team(self):
        # 隐藏
        self.all_hide()
        self.team_frame3.pack()
    # 隐藏
    def all_hide(self):
        for frame in (self.switch_frame1, self.supplier_frame, self.goods_frame,
                      self.staff_frame, self.procurement_main_frame, self.procurement_detail_frame,
                      self.team_frame3,):
            frame.pack_forget()

if __name__ == '__main__':
    root = tk.Tk()
    MainPage(root)
    root.mainloop()